import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // 存储全局共享的状态数据
    token:sessionStorage.getItem('token'),
    // 用户存在才读取,不存在就给空字符串
    user:sessionStorage.getItem('user')? 
    JSON.parse(sessionStorage.getItem('user') ) : ''
  },
  getters: {
    // 获取 state 中数据的临时计算结果类似 computed
  },
  mutations: { //是同步的
    // 提供一些方法来修改 state 中的状态数据
    updateName(state,newUser){
      state.user=newUser
      sessionStorage.setItem('user',JSON.stringify(newUser))
    },
    saveToken(state,payload){
      state.token=payload
      sessionStorage.setItem('token',payload)
    }
  },
  actions: {
    // 异步做一些耗时任务后 , 调用 mutations 中的方法来修改 state 中的状态数据
  },
  modules: {
  }
})
